/**
 * 
 */
package com.storm.lib.util;

import com.storm.lib.base.BaseParameter;
import com.storm.lib.bean.RoleIntParameter;
import com.storm.lib.bean.ValueBean;
import com.storm.lib.type.ParameterType;



/**
 * 类功能: 参数工具类
 * @author johnny
 * @version 2010-12-1
 */
public class ParameterUtil {

	/**
	 * 方法功能:得到参数
	 * 更新时间:2010-12-1, 作者:johnny
	 * @param parameters 例如:类型@值 (值=s|2333,i|1)
	 * @return
	 */
	public static BaseParameter getParameter(String parameters) {
		if(StringUtil.isEmpty(parameters)){
			return null;
		}
		BaseParameter baseParameter = new BaseParameter();
		String par1[] = parameters.split("@");
		Integer paramType = Integer.valueOf(par1[0]);
		baseParameter.setParamType(paramType);
		String par2[] = par1[1].split(",");
		for (int i = 0; i < par2.length; i++) {
			ValueBean valueBean = new ValueBean(par2[i]);
			baseParameter.addValueBean(valueBean);
		}
		if(baseParameter.getParamType()==ParameterType.ParamRoleIntType){
			return new RoleIntParameter(baseParameter);
		}
		ExceptionUtil.throwInvalidParamException();
		return null;
	}
	

}
